#ifndef __HELLOWORLD_SCENE_H__
#define __HELLOWORLD_SCENE_H__

#include "cocos2d.h"
#include "fish.h"
#include "bullet.h"
#include "objMgr.h"


class HelloWorld : public cocos2d::CCLayer
{
public:
	//HelloWorld();
	virtual ~HelloWorld();
	// Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone
	virtual bool init();  

	// there's no 'id' in cpp, so we recommand to return the exactly class pointer
	static cocos2d::CCScene* scene();
	
	// a selector callback
	virtual void menuCloseCallback(CCObject* pSender);

	virtual void NeedUpdate(ccTime dt);
	virtual bool ccTouchBegan(cocos2d::CCTouch *pTouch, cocos2d::CCEvent *pEvent);
	//virtual void ccTouchesBegan(CCSet *pTouches, CCEvent *pEvent);

	virtual void registerWithTouchDispatcher();

	virtual void onEnter();
	
	// implement the "static node()" method manually
	LAYER_NODE_FUNC(HelloWorld);
protected:
	CObjMgr<Fish>*  m_FishMgr;
	CObjMgr<CBullet>* m_BulletMgr;

};

#endif // __HELLOWORLD_SCENE_H__
